package com.xh.bussiness.course.bean.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.xh.core.bean.BaseDto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * @author theV
 */
@Data
public class CourseDto extends BaseDto implements Serializable {

    @ApiModelProperty("课程Id")
    private String id;

    @ApiModelProperty("课程名称")
    private String courseName;

    @ApiModelProperty("课次数")
    private  Integer  courseIndexNum;

    @ApiModelProperty("年级id")
    private String gradeId;

    @ApiModelProperty("课程类型Id")
    private String courseTypeId;

    @ApiModelProperty("年份Id")
    private String year;

    @ApiModelProperty("年份名称")
    private String yearName;

    @ApiModelProperty("学科id")
    private String subjectId;

    @ApiModelProperty("学科名称")
    private String subjectName;

    @ApiModelProperty("年段id")
    private String gradeRangeId;

    @ApiModelProperty("学期id")
    private String semesterId;

    @ApiModelProperty("课程类型名称")
    private String courseTypeName;

    @ApiModelProperty("年级名称")
    private String gradeName;

    @ApiModelProperty("学期名称")
    private String semesterName;

    @ApiModelProperty("课程对应的课次集合")
    private List<CourseIndexDto> courseIndexList;

    @ApiModelProperty("课次ID")
    private String courseIndexId;

    @ApiModelProperty("课次名称")
    private String courseIndexName;

    @ApiModelProperty("备课状态 0 未提交备课  1 已提交备课")
    private Integer lessonStatus;

    @ApiModelProperty("课次备课的最后时间")
    @JsonFormat(locale="zh", timezone="GMT+8", pattern="yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat
    private Date lastSaveDate;

    /**
     * 状态（0 未发布  1已发布）
     */
    private Integer status;
    /**
     * 进行到第几步
     */
    private Integer step;

    private String imgPath;
    /**
     * 未通过课次数量
     */
    private Integer unPassNum = 0;
    /**
     * 未备课课次数量
     */
    private Integer unPrepared = 0;
   
}
